/*
    1.该文件用于创建一个专门为count服务的reducer文件，reducer的本质是一个函数
    2.reducer会接收到两个参数，分别为：preState(之前的状态), 动作对象（action）
*/ 

import { INCREATEMENT, DECREATEMENT } from './constant'

const initState = 0;
export default function countReducer( preState = initState, action ){
    // 从action中获取：type和data对象
    const { data, type } = action;
    // 根据type决定如何加工
    switch (type) {
        case INCREATEMENT:
            return data  * 1 + preState;

        case DECREATEMENT:
            return preState - data * 1;
    
        default:
            return preState;
    }
}